//package com.shuaigef.springbootinit.utils;
//
//import com.alibaba.fastjson.JSON;
//import lombok.Data;
//import okhttp3.*;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.boot.context.properties.ConfigurationProperties;
//import org.springframework.stereotype.Service;
//
//@Data
//@Service
//@ConfigurationProperties(prefix = "wenxin")
//public class APIUtil {
//    private static final Logger log = LoggerFactory.getLogger(APIUtil.class);
//
//    @Value("${wenxin.api-key}")
//    public static String API_KEY;
//
//    @Value("${wenxin.secret-key}")
//    public static String SECRET_KEY;
//
//    public static String accessToken = null;
//
//    static final OkHttpClient HTTP_CLIENT = new OkHttpClient().newBuilder().build();
//
//    public static String getAccessToken() throws Exception {
//        log.info(APIUtil.accessToken);
//        if(APIUtil.accessToken != null) {
//            return APIUtil.accessToken;
//        }
//
//        MediaType formType = MediaType.parse("application/x-www-form-urlencoded");
//        RequestBody requestBody = RequestBody.create(
//                formType,
//                "grant_type=client_credentials&client_id="
//                + API_KEY + "&client_secret=" + SECRET_KEY
//        );
//
//        Request request = new Request.Builder()
//                .url("https://aip.baidubce.com/oauth/2.0/token")
//                .method("POST",requestBody)
//                .addHeader("Content-Type", "application/x-www-form-urlencoded")
//                .build();
//        System.out.println(request);
//        Response response = HTTP_CLIENT.newCall(request).execute();
//        String bodyStr = response.body().string();
//        APIUtil.accessToken = JSON.parseObject(bodyStr).getString("access_token");
//
//        return APIUtil.accessToken;
//    }
//
//    public void setApiKey(String apiKey) {
//        APIUtil.API_KEY = apiKey;
//    }
//
//    public void setSecretKey(String secretKey) {
//        APIUtil.SECRET_KEY = secretKey;
//    }
//}
